﻿<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="OrderManagement.aspx.cs" Inherits="TienTeTuong.back_end.OrderManagement" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Admin-page | Quản lí đơn đặt hàng</title>
    <link rel="stylesheet" href="../css/ForAdmin.css" />
    <script src="../js/jquery-1.7.1.min.js" type="text/javascript"></script>
    <script src="../js/ajaxupload.3.5.js" type="text/javascript"></script>
    <link rel="stylesheet" href="../js/jquerytablesorter/css/theme.green.css"> 
    <link rel="stylesheet" href="../js/jquerytablesorter/css/theme.blue.css"> 
	<!-- load jQuery and tablesorter scripts --> 
	<script type="text/javascript" src="../js/jquerytablesorter/js/jquery.tablesorter.min.js"></script> 
    <script type="text/javascript" src="../js/scrollupdown/scroll-startstop.events.jquery.js"></script>
	<!-- tablesorter widgets (optional) --> 
	<script type="text/javascript" src="../js/jquerytablesorter/js/jquery.tablesorter.widgets.js"></script> 
    <style type="text/css">
        table tbody tr:nth-of-type(2n+1)
        {
            background-color: #f2f2f2;
        }
        table tbody tr:nth-of-type(2n)
        {
            background-color: white;
        }
    </style>
    <script language="javascript">
        $(document).ready(function () { 
            $("#dataGrid").tablesorter({
                widthFixed: true,
                widgets: ["zebra", "filter"],
                theme: 'green',
                widgetOptions: {

                    // If there are child rows in the table (rows with class name from "cssChildRow" option) 
                    // and this option is true and a match is found anywhere in the child row, then it will make that row 
                    // visible; default is false 
                    filter_childRows: false,

                    // if true, a filter will be added to the top of each table column; 
                    // disabled by using -> headers: { 1: { filter: false } } OR add class="filter-false" 
                    // if you set this to false, make sure you perform a search using the second method below 
                    filter_columnFilters: true,

                    // css class applied to the table row containing the filters & the inputs within that row 
                    filter_cssFilter: 'tablesorter-filter',

                    // add custom filter functions using this option 
                    // see the filter widget custom demo for more specifics on how to use this option 
                    filter_functions: null,

                    // if true, filters are collapsed initially, but can be revealed by hovering over the grey bar immediately 
                    // below the header row. Additionally, tabbing through the document will open the filter row when an input gets focus 
                    filter_hideFilters: false,

                    // Set this option to false to make the searches case sensitive 
                    filter_ignoreCase: true,

                    // jQuery selector string of an element used to reset the filters 
                    filter_reset: 'button.reset',

                    // Delay in milliseconds before the filter widget starts searching; This option prevents searching for 
                    // every character while typing and should make searching large tables faster. 
                    filter_searchDelay: 300,

                    // Set this option to true to use the filter to find text from the start of the column 
                    // So typing in "a" will find "albert" but not "frank", both have a's; default is false 
                    filter_startsWith: false,

                    // Filter using parsed content for ALL columns 
                    // be careful on using this on date columns as the date is parsed and stored as time in seconds 
                    filter_useParsedData: false

                }
            });

            $('.ckb').change(function () {
                if ($(this).is(':checked')) {
                    $(this).parent().parent().addClass('RowActive');
                } else {
                    $(this).parent().parent().removeClass('RowActive');
                }
                if ($('.ckb:checked').length > 0) {
                    $('#Deletes').parent().show();
                } else {
                    $('#Deletes').parent().hide();
                }
            });
            $('#Deletes').parent().hide();
            $('#Deletes').live('click', function () {
                var ids = '';
                $('.ckb:checked').each(function () {
                    ids += $(this).parent().parent().attr('rel') + '/';
                });
                if (confirm('Bạn có muốn xóa những đơn đặt hàng này không?')) {
                    $.ajax({
                        url: 'ManageController.aspx',
                        data: { 'action': 'DeleteOds', 'ids': ids },
                        success: function (data) {
                            location.reload();
                        }
                    });
                }
            });
            $('#top_navigator li').hover(function () {
                $(this).find('.subMenu').show();
            }, function () {
                $(this).find('.subMenu').hide();
            });
        });
    </script>
</head>
<body>
    <div id="header">
              <ul id="top_navigator">
            <li><a href="ArticaleCategoryManagement.aspx">Quản lí danh mục bài viết</a>
                <ul class="subMenu">
                    <li class ="noLi"><a class ="noLi" href="addArticleCategory.aspx">Thêm danh mục bài viết</a></li>
                 </ul>
            </li>
            <li><a href="ArticaleManagement.aspx">Quản lí bài viết</a>
                 <ul class="subMenu">
                    <li class ="noLi"><a class ="noLi" href="addArticle.aspx">Thêm bài viết</a></li>
                 </ul>
            </li>
            <li><a href="CategoryManagement.aspx">Quản lý danh mục gói Sản Phẩm</a>
                 <ul class="subMenu">
                    <li class ="noLi"><a class ="noLi" href="AddCategory.aspx">Thêm danh mục gói Sản Phẩm</a></li>
                 </ul>
            </li>
            <li><a href="CategoryDetailManagement.aspx">Quản lí gói sản phẩm</a>
                <ul class="subMenu">
                    <li class ="noLi"><a class ="noLi" href="AddCategoryDetail.aspx">Thêm gói Sản Phẩm</a></li>
                 </ul>
            </li>
            <li><a href="ProductDetailManagement.aspx">Quản lí sản phẩm</a>
            </li>
            <li><a href="OrderManagement.aspx">Quản lí đơn đặt hàng</a>
            </li>
            <li><a href="SponserManagement.aspx">Quản lí nhà tài trợ</a>
                <ul class="subMenu">
                    <li class ="noLi"><a class ="noLi" href="AddSponsor.aspx">Thêm nhà tài trợ</a></li>
                 </ul>
            </li>
        </ul>
    </div>
    <div id="main">
        <div class="inside">
            <div style="width: 158px" class="floatRight">
                <ol class="CataCour">
                    <li class="curSelected"><a href="ChangePassword.aspx">Đổi mật khẩu</a></li>
                    <li><a href="Logout.aspx">Đăng xuất</a></li>
                </ol>
            </div>
            <div style="width: 70%; padding-left: 10px" class="floatLeft">
                <span class="pageTitle">Quản lí đơn đặt hàng</span>
            </div>
            <div style="position: fixed; bottom: 0px; left: 30px; padding: 5px 10px; background-color: gray" id="ONavigation">
                <div class="btn btnDeletes" id="Deletes" style="float:left; padding: 0px 10px; width: 200px">Xóa những đơn hàng đã chọn</div>
            </div>
                <form id="form1" runat="server" style="clear:both">
                    <table cellspacing="0" width="1500" id="dataGrid">
                        <thead>
                            <tr>
                                <th width="20"></th>
                                <th></th>
                                <th data-placeholder="Tìm theo ID">ID</th>
                                <th>Ngày tạo</th>
                                <th width="150" data-placeholder="Tìm theo tên">Tên người nhận   
                                </th>
                                <th data-placeholder="Tìm theo Email">Email
                                </th>
                                <th data-placeholder="Tìm theo đại chỉ">Địa chỉ
                                </th>
                                <th data-placeholder="Tìm theo Sdt">Số điện thoại
                                </th>
                                <th width="350">Sản phẩm đặt hàng</th>
                                <th>Ghi chú</th>
                                <th>Ghi chú của admin</th>
                                <th>Tổng tiền</th>
                                <th>Trạng thái</th>
                                <th></th>
                                <th></th>
                            </tr>
                        </thead>
                        <tbody>
                            <%foreach(var item in orders){ %>
                            <tr rel="<%=item.ID %>">
                                <td><input type="checkbox" name="checkBox" class="ckb"/></td>
                                 <td><a href = "OrderDetail.aspx?id=<%=item.ID %>">Chi tiết</a></td>
                                <td><%=item.ID %></td>
                                <td><%=item.CreatedDate %></td>
                                <td><%=item.ReceiverName %></td>
                                <td><%=item.Email %></td>
                                <td><%=item.Address %></td>
                                <td><%=item.Phone %></td>
                                <td>
                                    <%foreach(var cate in item.Items) { %>
                                         <%=cate.NameToDisplay %> (Số lượng: <%=cate.CategoryQuantity %>):
                                            <%foreach (var product in cate.Products){%>
                                          <%=product.ProName %> (<%=product.Quantity %><%=product.unit %>), 
                                            <%}%></br>
                                    <% } %>
                                </td>
                                <td><%=item.Note %></td>
                                <td class ="editable"><%=item.AdminNote %></td>
                                <td><%=item.Total %></td>
                                <td class="select"><%=item.Status %></td>
                                <td><span class="btn btnEdit">Sửa</span></td>
                                <td><span class="btn btnDelete">Xóa</span></td>
                            </tr>
                            <%} %>
                        </tbody>
                    </table>
              </form>
        </div>
    </div>
    <div id="foot">
    </div>
    <div id="Loading"></div>
    <div id="LoseFocus"></div>
    <div id="ContainAjax"></div>
</body>
<script type="text/javascript">

    $(document).ready(function () {
        $('input[type*="checkbox"][value*="True"]').attr('checked', 'checked');
        var statusArr = ['Đang chờ duyệt', 'Đã duyệt và giao hàng', 'Đã hủy', 'Đã thanh toán'];
        // Delete
        $('.btnDelete').live('click', function () {
            var id = $(this).parent().parent().attr('rel');
            var curRow = $(this).parent().parent();
            if (confirm('Bạn có muốn xóa đơn đặt hàng này không?')) {
                $.ajax({
                    url: 'ManageController.aspx',
                    data: { 'action': 'DeleteOd', 'id': id },
                    success: function (data) {
                        if (data == 'true') {
                            curRow.remove();
                        } else {
                            alert('Hiện tại không thể xóa đơn đặt hàng này. Vui lòng thử lại sau.');
                        }
                    }
                });
            }
        });

        $('.btnEdit').live('click', function () {
            $(this).text('Lưu').removeClass('btnEdit').addClass('btnSave');
            var curSt = $(this).parent().prev('.select');
            var curRow = $(this).parent().parent();
            var htmlText = '';
            $.map(statusArr, function(txt, index){
                htmlText += '<option value="' + txt + '">' + txt + '</option>';
            });
            curSt.html('<select rel="' + curRow.attr('id') + '">' + htmlText + '</select>');
            var textNote = curRow.find('.editable').text();
            curRow.find('.editable').html('<input type = "text" value = "' + textNote + '" />');
        });

        $('.btnSave').live('click', function () {
            var id = $(this).parent().parent().attr('rel');
            var status = $(this).parent().parent().find('select').val();
            var cur = $(this).parent().parent().find('.select');
            var txtAdmin = $(this).parent().parent().find('input[type="text"]').val();
            var txt = $(this).parent().parent().find('.editable');
            var btnCur = $(this);
            $.ajax({
                url: 'ManageController.aspx',
                data: { 'action': 'COS', 'id': id, 'st': status, 'note': txtAdmin },
                success: function (data) {
                    if (data != 'true') {
                        alert('Hiện tại không thể cập nhật đơn hàng. Vui lòng thử lại sau');
                    } else {
                        cur.text(status);
                        txt.text(txtAdmin);
                        btnCur.text('Sửa').removeClass('btnSave').addClass('btnEdit');
                    }
                }
            });
        });
    });
</script>
</html>

